home *** CD-ROM | disk | FTP | other *** search
/ C/C++ Users Group Library 1996 July / C-C++ Users Group Library July 1996.iso / listings / v_12_07 / allison / destroy3.cpp < prev    next >
C/C++ Source or Header  |  1994-05-02  |  410b  |  30 lines

  1. LISTING 7 - Illustrates a Dangling Resource
  2.  
  3. // destroy3.cpp
  4. #include <stdio.h>
  5.  
  6. void f(char *fname);
  7.  
  8. main()
  9. {
  10.     try
  11.     {
  12.         f("file1.dat");
  13.     }
  14.     catch(...)
  15.     {}
  16.     return 0;
  17. }
  18.  
  19. void f(char *fname)
  20. {
  21.     FILE *fp = fopen(fname,"r");
  22.     if (fp)
  23.     {
  24.         // Use f, then throw an exception
  25.         throw 1;
  26.         fclose(fp);     // This won't happen
  27.     }
  28. }
  29.  
  30.